.kpi-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 24px;
}

.kpi-card {
    background: #fff;
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.kpi-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.kpi-card-title {
    color: #8c8c8c;
    font-size: 14px;
    margin-bottom: 8px;
}

.kpi-card-value {
    font-size: 24px;
    font-weight: 600;
    color: #262626;
    margin-bottom: 8px;
}

.kpi-card-trend {
    font-size: 13px;
}

.trend-up {
    color: #52c41a;
}

.trend-down {
    color: #f5222d;
}

.status-warning {
    position: relative;
    padding-right: 20px;
}

.warning-icon {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #faad14;
}

.ranking-card {
    display: flex;
    flex-direction: column;
}

.store-ranking {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 8px;
}

.ranking-value {
    font-size: 24px;
    font-weight: 600;
    color: #262626;
}

.ranking-change {
    font-size: 14px;
    padding: 4px 8px;
    border-radius: 4px;
}

.rank-up {
    color: #52c41a;
    background: rgba(82, 196, 26, 0.1);
}

.rank-down {
    color: #f5222d;
    background: rgba(245, 34, 45, 0.1);
}

.rank-same {
    color: #8c8c8c;
    background: rgba(140, 140, 140, 0.1);
}